#ifndef __RAY__
#define __RAY__

#include "Point3D.h"

class Ray
{
public:
	Point3D o;
	Point3D d;

	Ray(void)
	{
		o = Point3D(0);
		d = Point3D(0);
	}

	Ray(const Point3D &origin, const Point3D &dir)
	{
		o = origin;
		d = dir;
	}


	Ray(const Ray& currentRay)
	{
		o = currentRay.o;
		d = currentRay.d;
	}

	void operator = (const Ray& rhs)
	{
		o = rhs.o;
		d = rhs.d;
	}

	~Ray(void)
	{}
};

#endif // !RAY_H
